Instant messaging is the fastest growing communications channel in history. As will be appreciated, instant messaging, in a normal application, enables near real-time text communications between two or more individuals. Instant messaging allows one to maintain a list of people, such as a buddy list or contact list, that one wishes to communicate with. In a typical application, sending an instant message to a device opens up a small window on the device's Graphical User Interface or GUI where the receiver can type in messages that both the receiver and sender can view. A party is notified when one of the people on the list is on line and the contact information of the person is provided. The party's contact information is also forwarded to the people on the contact list that are signed on. To initiate a contact, a person clicks on the name of a person on the list that is on line and a window opens into which text can be entered. The person can then send an inputted message by clicking on a send command. Typically, communication is directly between the two clients. The other person gets the message and responds. The window that each person views expands to include a scrolling dialog of the conversation. When the conversation is completed, the message window is closed. When a person goes off line, the clients of each person on the list that are currently on line are notified that the person is now off line. The temporary file that contained the connection information, and typically the conversation itself, is deleted. The instant message display can be configured by the user using various instant message controls, such as font, emoticons, and color. Examples of instant messaging protocols include AOL Instant Messenger™, ICQ™, MSN Messenger™, Yahoo! Messenger™, Jabber™, Session Initiation Protocol/Instant Messaging and Presence Leveraging Extensions or SIMPLE, Extensible Messaging and Presence Protocol or XMPP, Sametime™, Everybody™, and Trillian™, and the Instant Messaging and Presence Protocol. These protocols normally use one of the Transmission Control Protocol and User Datagram Protocol for data transmission over the Internet.
The increasing use of instant messaging in both personal and business communications necessitates enterprise contact or interaction centers to be configured to interact with instant messaging protocols. Conventional contact centers having instant messaging functionality use real-time identification and detect agents' presence online to find the right expert for immediate problem collaboration and resolution. An example of such a contact center instant messaging system is the FaceTime Instant Message Director™. The ability of customers, however, to view the presence and availability of individual agents and contact them directly disregards what the contact center industry has learned and developed over the last three decades about the efficient usage of call center resources.